import type { App } from 'vue';
import {
  create,
  NButton,
  NIcon,
  NForm,
  NFormItem,
  NCard,
  NSpace,
  NInput,
  NConfigProvider,
  NAlert,
  NGrid,
  NMessageProvider,
  NDialog,
  NDialogProvider,
  NGi,
  NCollapseTransition,
  NCheckboxGroup,
  NCheckbox,
  NSelect,
  NPagination,
  NPopover,
  NEmpty,
  NTabs,
  NTabPane,
  NTag,
  NRadio,
  NRadioGroup,
} from 'naive-ui';

const naive = create({
  components: [
    NRadio,
    NRadioGroup,
    NEmpty,
    NCollapseTransition,
    NDialog,
    NPopover,
    NDialogProvider,
    NIcon,
    NAlert,
    NForm,
    NFormItem,
    NButton,
    NConfigProvider,
    NCard,
    NGrid,
    NMessageProvider,
    NGi,
    NSpace,
    NInput,
    NCheckboxGroup,
    NCheckbox,
    NSelect,
    NPagination,
    NTabs,
    NTabPane,
    NTag,
  ],
});
export function setupNaive(app: App<Element>) {
  app.use(naive);
}
